函数原型和函数调用
#include <iostream>
void cheers(int); // 函数原型
double cube(double x); // 函数原型
int main()
{
using namespace std;
cheers(5);
cout << "Give me a number: ";
double side;
cin >> side;
double volume = cube(side);
cout << "A " << side << "-foot cube has a volume of ";
cout << volume << " cubic feet.\n";
cheers(cube(2));
return 0;
}
void cheers(int n)
{
using namespace std;
for (int i = 0; i < n; i++)
cout << "Cheers! ";
cout << endl;
}
double cube(double x)
{
return x * x * x;
}
原型的语法
函数原型是一条语句,因此必须以分号结束。函数原型不要求提供变量名,有类型列表就足够了。
void cheers(int);
通常,在原型的参数列表中,可以包括变量名,也可以不包括。原型中的变量名相当于占位符,因此不必与函数定义中的变量名相同。
在 C++ 中,括号为空与在括号中使用关键字
void
是等效的--意味着函数没有参数。不指定参数列表时应使用省略号:
void say_bye(...);
通常,仅当与接受可变参数的 C 函数(如
printf()
)交互时才需要这样做。
原型的功能
● 编译器正确处理函数返回值;
● 编译器检查使用的参数数目时否正确;
● 编译器检查使用的参数类型是否正确。
🔚